{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 第一章：因果关系入门\n",
    "\n",
    "## 为什么需要关心因果关系？\n",
    "\n",
    "首先，您可能想知道：它对我有什么好处？下面的文字就将围绕“它”展开：\n",
    "\n",
    "## 数据科学不再是过去所认为的样子（或最终应该呈现的样子）\n",
    "\n",
    "数据科学家被哈佛商业评论评为 [21世纪最有吸引力的工作](https://hbr.org/2012/10/data-scientist-the-sexiest-job-of-the-21st-century)。这不是空话。十年来，数据科学家一直是人们关注的焦点。人工智能专家的薪水[可与体育巨星相媲美]((https://www.economist.com/business/2016/04/02/million-dollar-babies))。在追求名利的过程中，成千上万的年轻专业人士开始了一场看似疯狂的淘金热，以尽快获得数据科学的头衔。整个新行业都围绕着炒作而兴起。神奇的教学方法可以让你成为数据科学家，而无需你看一个数学公式。如果您的公司能够释放数据的潜力，咨询专家承诺将投入数百万美元。人工智能或机器学习，被称为新电力，而数据，则被成为新石油。\n",
    "\n",
    "与此同时，我们有点忘记了那些一直在用数据做“老式”科学的人。在这段时间里，经济学家试图回答教育对一个人收入的真正影响是什么，生物统计学家试图了解饱和脂肪是否会导致更高的心脏病发作几率，心理学家试图了解肯定的话是否真的会导致心脏病发作。婚姻更幸福。老实说，数据科学家并不是一个新兴领域。由于媒体提供了大量的免费营销，我们刚刚才意识到这一点。\n",
    "\n",
    "使用Jim Collins的比喻，想想给自己倒一杯你最喜欢的冰镇啤酒。如果您以正确的方式执行此操作，杯子里大部分将是啤酒，但顶部会有一指厚的泡沫层。这个杯子装的就像数据科学。\n",
    "\n",
    "1. 它可以是啤酒。 统计基础，科学好奇心，对难题的热情。 数百年来，所有这些都被证明非常有价值。\n",
    "2. 它也可以是泡沫。 建立在不切实际的期望之上的那些蓬松东西最终会消失。\n",
    "\n",
    "这种泡沫可能以比你想象中更快的速度掉下来。 正如《经济学人》所说：\n",
    "\n",
    "> 那些预测人工智能将产生改变世界影响的顾问还报告说，真正公司的真正管理者发现人工智能很难实施，而且对它的热情正在降温。 研究公司 Gartner 的 Svetlana Sicular 表示，2020 年可能是人工智能跌入其公司广为人知的“炒作周期”下坡的一年。 投资者开始意识到赶潮流：风险投资基金 MMC 对欧洲人工智能初创公司的一项调查发现，40% 的人似乎根本没有使用任何人工智能。\n",
    "\n",
    "在所有这些热潮中，作为数据科学家——或者更确切的说，作为“纯粹”的科学家——我们应该做什么？ 作为初学者，如果您很聪明，您将学会忽略泡沫。 我们是为了啤酒。 数学和统计学一直很有用，现在不太可能停止。 其次，学习是什么让你的工作有价值和有用，而不是没有人想出如何使用的最新闪亮工具。\n",
    "\n",
    "最后，但同样重要的，是请记住没有捷径可走。 数学和统计学知识之所以有价值，正是因为它们很难获得。 如果每个人都能做到，供应过剩就会压低价格。 所以**振奋起来**！ 尽可能地学习它们。 哎呀，为什么不呢？ 一路上玩得开心，因为我们只为**勇敢而真实**的人开始这个任务。\n",
    "\n",
    "![img](./data/img/intro/tougher-up-cupcake1.jpg)\n",
    "\n",
    "## 回答不同类型的问题\n",
    "\n",
    "机器学习目前非常擅长回答的问题类型是预测类型。正如 Ajay Agrawal、Joshua Gans 和 Avi Goldfarb 在《[预测机器](https://www.predictionmachines.ai/)》一书中所说，“人工智能的新浪潮实际上并没有给我们带来智能，而是智能的一个关键组成部分——预测”。我们可以用机器学习做各种美妙的事情。唯一的要求是我们将问题构建为预测问题。想从英语翻译成葡萄牙语？然后构建一个 ML 模型，在给定英语句子时预测葡萄牙语句子。想识别人脸？然后构建一个 ML 模型，该模型预测图片子部分中是否存在人脸。想造一辆自动驾驶汽车吗？然后构建一个 ML 模型来预测车轮的方向以及当呈现来自汽车周围的图像和传感器时的刹车和油门压力。\n",
    "\n",
    "然而，ML 并不是万能的。它可以在非常严格的边界下创造奇迹，但如果它使用的数据与模型习惯的数据略有不同，它仍然会失败。再举一个来自 Prediction Machines 的例子，“在许多行业中，低价格与低销量有关。比如在酒店行业，旅游旺季外价格低，需求旺盛、酒店爆满时价格高。鉴于这些数据，一个幼稚的预测可能表明提高价格会导致售出更多房间。”\n",
    "\n",
    "ML 在这种逆因果关系类型的问题上是出了名的糟糕。这类问题要求我们回答“假设发生”这样的问题，经济学家称之为反事实。假设我目前要求的商品不是这个价格，而是使用另一个价格，会发生什么情况？假设我不采用这种低脂饮食，而是采用低糖饮食，会发生什么？假设您在银行工作，提供信贷，您将必须弄清楚更改客户线会如何改变您的收入。或者，假设您在当地政府工作，您可能会被要求弄清楚如何改善学校教育系统。您是否应该因为数字知识时代告诉您而将平板电脑送给每个孩子？或者你应该建造一个老式的图书馆？\n",
    "\n",
    "这些问题的核心是我们希望知道答案的因果调查。因果问题渗透到日常问题中，例如弄清楚如何提高销售额，但它们也在我们非常个人和宝贵的困境中发挥重要作用：我是否必须上一所昂贵的学校才能在生活中取得成功（是吗？教育导致收入）？移民是否会降低我找到工作的机会（移民是否会导致失业率上升）？向穷人汇款会降低犯罪率吗？不管你在哪个领域，很可能你已经或将不得不回答某种类型的因果问题。不幸的是，对于 ML，我们不能依靠相关类型预测来解决它们。\n",
    "\n",
    "回答这类问题比大多数人想象的要困难。您的父母可能已经向您反复说过“关联不是因果关系”，但实际上要解释为什么会这样却是有点困难的。这也是因果关系入门这一章要讲的。至于本书的其余部分，它将致力于弄清楚如何使关联成为因果关系。\n",
    "\n",
    "## 当关联确实是因果时\n",
    "\n",
    "直觉上，我们模糊地知道为什么关联不是因果关系。 如果有人告诉您，为学生提供平板电脑的学校比不提供平板电脑的学校表现更好，您可以很快指出，那些配备平板电脑的学校可能更富有。 因此，即使没有平板电脑，他们的表现也会比平均水平更好。 因此，我们不能得出结论说，在课堂上给孩子们使用平板电脑会提高他们的学习成绩。 我们只能说学校的平板电脑与学习成绩表现好有关。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "from scipy.special import expit\n",
    "import seaborn as sns\n",
    "from matplotlib import pyplot as plt\n",
    "from matplotlib import style\n",
    "\n",
    "style.use(\"fivethirtyeight\")\n",
    "\n",
    "np.random.seed(123)\n",
    "n = 100\n",
    "tuition = np.random.normal(1000, 300, n).round()\n",
    "tablet = np.random.binomial(1, expit((tuition - tuition.mean()) / tuition.std())).astype(bool)\n",
    "enem_score = np.random.normal(200 - 50 * tablet + 0.7 * tuition, 200)\n",
    "enem_score = (enem_score - enem_score.min()) / enem_score.max()\n",
    "enem_score *= 1000\n",
    "\n",
    "data = pd.DataFrame(dict(enem_score=enem_score, Tuition=tuition, Tablet=tablet))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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+vLy8tLJkye1YcMGde3aVX/++acGDhxoa3/w4EE1aNBAly9fVpMmTRQWFqb09HQdOXJEK1as0CuvvCJvb29J14axZ82apYoVK6p169YqVqyYTpw4od27d+vLL79Uhw4dbll/fkLQ5SPXDwf+042Glfz8/BQeHq6pU6fq008/1aBBg27rWGfPnr3h8YoXL65evXrluC40NFRDhgxRVFSULeiSk5O1YcMGtWvXzuE5nVWrVslisej999/P9sN/+fJlXblyxfY4NjZW48aNU9myZbVu3Tr5+fnZtT969Kjt/wkJCZo0aZLKli2rb7/9VmXKlJEkjR49Wj179tTixYs1ZswYTZw4MVtNP//8szZv3ixfX1+75UuWLNHs2bPVokULzZw50+6Pio8++kjvv/++xo0bpw8++OC2z3/9+vVasmSJ3UU+U6dO1YgRIzRo0CDbX+b169fXo48+qtWrVys1NdVuiC05OVlff/21qlatmmMI5oa1a9fqkUcesVt29epVvfbaa4qKilKPHj0UEBCQbbvvvvtOcXFxqlq1qqRrvZA+ffpo4cKFGj9+vN5///2bHvebb77RRx99pPr16+uLL76w+yNi9uzZGjhwoN555x1Nnz5dnp6eGjZsmGbOnKnLly/n6lDswYMHFRYWphkzZqhgwYKSpAEDBigwMFBTp07VG2+8ccupg+3bt0uSAgMD5e7uftc1ubi4aNeuXdl+Di5evKgXXnhBEyZM0GuvvaZSpUpJkr788ktduHBBERER2UZeLl26pMzMTEnXpiEWLFggPz8/bdu2TQ8//LBd2/vxyk+GLvOR8ePH3/DrZt566y2VKlVKERERSk5Ovq1jnTt37obHioyMvOF2bm5uateunbZs2WIbXlu4cKGuXr16R8OWBQpcewkWLlw427pChQrZ9aamT58uSXrvvfey/XBLUvny5W3/X7BggaRrv4yyQk6STCaTxowZIzc3Ny1atMguSLO88cYb2UJOkv773//KxcVFU6dOzdZzHjBggEqVKqWlS5fe7HSz+fe//53tStaePXuqfPnyio2N1bFjx2zLu3Xrpr///tt2blk+//xzXblyJc96c5KyhZx07eKk119/XdK1P0Jy8sorr9hCTrr2/I8YMUIFCxbUF198ccthz6zX4pQpU7L1lLt166ZKlSpp1apV2YbSc5vJZNKECRNsISfJ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US+88IKCg4O1c+dOSdLp06cVERGhP/74I9eLBADgTjn0CePHjh3T888/r7/++kuVKlXS/v37lZaWJkkqWbKk5s+fr2PHjmn8+PF5UiwAAI5yKOhGjx6tc+fO6bvvvpPZbFblypXt1jdv3lwbN27M1QIBALgbDg1dxsTEqEePHgoICJDJZMq23s/PT8eOHcu14gAAuFsOBd3FixdlNptvuj4zM/OuiwIAILc4FHSVKlXSjz/+eMP1MTExCggIuOuiAADILQ4FXefOnbV48WItXrzY1nMzmUxKS0vTiBEjtHnzZnXr1i1PCgUA4E44dGyJeGkAAB8HSURBVDFKeHi49u7dq549e6po0aKSpK5du8pisSgjI0M9evRQ+/bt86RQAADuhENBJ0mTJ0/WSy+9pJUrV+rAgQPKzMzUI488otatW6tevXp5USMAAHfstoPuypUrSkhIkLe3t4KCghQUFJSXdQEAkCtue47OxcVFYWFhio2Nzct6AADIVbcddAUKFJCPj48uXLiQl/UAAJCrHLrqslevXpo3b55OnjyZV/UAAJCrHLoY5cKFC3J3d1ft2rXVvHlz+fn5yc3Nza6NyWRS3759c7VIAADulMPvdZllyZIlObYh6AAA+YlDQbd79+68qgMAgDzhUND5+PjkVR0AAOQJh28Yl6Tz589r69atOnz4sKRrAfj000/b3i0FAID8wuGgmz59usaOHau0tDRZrVbbcnd3d40YMUI9evTI1QIBALgbDgXd4sWLNXToUNWpU0c9e/ZU1apVZbVatX//fn322WcaNmyYSpQooXbt2uVVvQAAOMShoJs2bZqCgoK0Zs0aubr+b9MaNWooNDRULVq00NSpUwk6AEC+4dAN40lJSWrdurVdyGVxdXVV69at9fvvv+dacQAA3C2Hgs7d3V3Jyck3XJ+cnKzChQvfdVEAAOQWh4KuQYMGmj59urZs2ZJt3datWzVjxgw1bNgw14oDAOBuOTRHN2rUKG3btk2hoaGqWbOmqlSpIknav3+/EhMTVaZMGY0aNSpPCgUA4E441KMrX768tmzZol69eunixYv66quv9NVXX+nixYvq3bu3tmzZonLlyuVVrQAAOMzh++hKliypsWPHauzYsXlRDwAAucqhHl1aWpqOHDlyw/VHjhzRxYsX77ooAAByi0NBN3z4cHXs2PGG619++WWN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5aUnnnhC06ZNs33szP79+22flfbuu+/ahlj79+9/9ycJ5CF6dEA+9+mnn6ply5Zq06aNrFarvvrqK73++uuyWq3q0KGDXdukpCR16dJFXbt2VYcOHbR48WKFh4erUKFCCg0NveExjh8/roYNG6pAgQLq1q2bvLy8tGXLFr399ts6efKkRo8eLW9vb33wwQcaPny4WrduraZNm0qSKleunKfnD9wt3tQZcLKePXtqxYoVSk5OznH9xYsX7T7g02q16vnnn9fZs2e1bds22/IqVaooJSVFn3/+uVq2bClJSktLU3BwsEwmk/7v//5PJpNJ+/fvV2BgoGbPnq02bdpIknr06KEtW7Zo69atKlmypG2fgwcP1pw5c/Tzzz+rTJkyOnTokGrVqqVRo0bRk8N9g6FLIJ/LCrkrV67ozJkzOn36tP79739r7969Sk9Pt2tbvnx5tWjRwvbY3d1dnTp10sGDB5WUlJTj/q9evao1a9YoJCREVqtVp06dsn01atRIV69e5SpL3NcYugTyuVWrVunjjz/Wr7/+qoyMDLt158+ft32StSQ98sgjMplMdm2yhhaPHDmiKlWqZNv/8ePHlZaWptmzZ2v27Nk51nDy5Mm7PQ3AaQg6IB/77rvv9Nprr+npp5/WJ598Im9vbz300ENau3atZs6cqczMTLv214ecJNvFJDeStY8OHTrc8MpP5uFwPyPogHwsOjpaRYsW1YoVK+w+vf2bb77Jsf2BAwdktVrtAu+PP/6QJNsnuV+vTJkycnNzU2Zmpp599tmb1pNTkAL5HXN0QD7m4uIiSXZDlqmpqTe8veDo0aNas2aN7XFaWpoWLFggPz8/+fv757hNwYIF1aJFC61cuVJ79uzJtt5isejq1auSrs35ZS0D7hf06IB8rFmzZpo1a5batGmjNm3a6PTp05o7d67Kli2rU6dOZWvv7++v3r1766effpKXl5cWLVqkQ4cOae7cuTftjb333nv64Ycf1KhRI73yyit69NFHdfbsWf36669avXq19u7dKw8PD5UqVUo+Pj5aunSpKlSooBIlSqhixYp6/PHH8/JpAO4KPTogH2vUqJGmTJmi5ORkDRs2TIsWLVLfvn3VpUuXHNv7+/tr7ty5+uabbzR69GilpaXps88+U6tWrW56HG9vb8XFxalTp05at26dBg0apE8//VRHjhzRO++8oyJFitjaRkZGymw26+2331a3bt00f/78XD1nILdxHx0AwNDo0QEADI2gAwAYGkEHADA0gg4AYGgEHQDA0Ag6AIChEXQAAEMj6AAAhkbQAQAMjaADABja/wM8WuOa9qmD6wAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(6,8))\n",
    "sns.boxplot(y=\"enem_score\", x=\"Tablet\", data=data).set_title('ENEM score by Tablet in Class')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "为了超越简单的直觉，让我们首先建立一些符号。 这将是我们谈论因果关系的共同语言。 把它想象成我们将用来识别其他勇敢和真正的因果战士的通用语言，它将在未来的许多战斗中组成我们的呼声。\n",
    "\n",
    "用 \\\\(T_i\\\\) 表达单元i的干预介入量（treatment intake）. \n",
    "\n",
    "$\n",
    "T_i=\\begin{cases}\n",
    "1 \\ \\text{if unit i received the treatment}\\\\\n",
    "0 \\ \\text{otherwise}\\\\\n",
    "\\end{cases}\n",
    "$\n",
    "\n",
    "这里的干预不需要是药物或医学领域的任何东西。 相反，它只是一个术语，我们将用它来表示一些我们想知道其效果的干预。 在我们的案例中，治疗是给学生服用药片。 作为旁注，您有时可能会看到 \\\\(D\\\\) 而不是 \\\\(T\\\\) 来表示处理。\n",
    "\n",
    "现在，让我们将 \\\\(Y_i\\\\) 称为单元 i 的观察结果变量。\n",
    "\n",
    "结果是我们感兴趣的变量。 我们想知道干预是否有任何影响。 在我们的平板电脑示例中，它将是学习成绩。\n",
    "\n",
    "这就是事情变得有趣的地方。 **因果推断的基本问题**是我们永远无法在经过处理和未经处理的情况下观察到同一个单元。 就好像我们有两条不同的道路，我们只能知道我们走的那条路前面有什么。 正如Robert Frost的诗：\n",
    "\n",
    "> 两条路在黄树林中分岔，  \n",
    " 很抱歉我不能同时走过这两条路  \n",
    " 作为一名独行者，我驻足许久  \n",
    " 尽我所能地往前看  \n",
    " 直到在灌木旁蜿蜒消失；\n",
    "\n",
    "为了解决这个问题，我们将在**潜在结果**方面进行很多讨论。它们被成为潜在的结果是因为它们实际上并没有发生。相反，它们表示在采取某些干预的情况下**会发生什么**。我们有时将发生的潜在结果称为事实，而将未发生的潜在结果称为反事实。\n",
    "\n",
    "至于符号，我们使用了一个额外的下标：\n",
    "\n",
    "\\\\(Y_{0i}\\\\) 是未经处理的单元 i 的潜在结果。\n",
    "\n",
    "\\\\(Y_{1i}\\\\) 是**相同**单元 i 的潜在结果。\n",
    "\n",
    "有时您可能会看到表示为函数 \\\\(Y_i(t)\\\\) 的潜在结果，所以要小心。 \\\\(Y_{0i}\\\\) 可以是 \\\\(Y_i(0)\\\\) 而 \\\\(Y_{1i}\\\\) 可以是 \\\\(Y_i(1)\\\\)。在这里，我们大部分时间将使用下标符号。\n",
    "\n",
    "![img](./data/img/intro/potential_outcomes.png)\n",
    "\n",
    "回到我们的例子，\\\\(Y_{1i}\\\\) 是学生 i 如果他或她在带平板电脑的教室里的学习成绩。不管是不是这样，对于\\\\(Y_{1i}\\\\)都没有关系。不管怎样都是一样的。如果学生 i 拿到平板电脑，我们可以观察到 \\\\(Y_{1i}\\\\)。如果没有，我们可以观察到\\\\(Y_{0i}\\\\)。注意在最后一种情况下，\\\\(Y_{1i}\\\\) 仍然是定义的，我们只是看不到它。在这种情况下，这是一个反事实的潜在结果。\n",
    "\n",
    "有了潜在的结果，我们可以定义个体治疗效果：\n",
    "\n",
    " \\\\(Y_{1i} - Y_{0i}\\\\)\n",
    " \n",
    "当然，由于因果推断的根本问题，我们永远无法知道个体的治疗效果，因为我们只观察了其中一种潜在结果。目前，让我们关注一些比估计个体治疗效果更容易的事情。相反，让我们关注**平均处理效果**，其定义如下。\n",
    "\n",
    "\\\\(ATE = E[Y_1 - Y_0]\\\\)\n",
    "\n",
    "其中，`E[...]` 是期望值。另一个更容易估计的数量是**对被干预者的平均干预效果**：\n",
    "\n",
    "\\\\(ATT = E[Y_1 - Y_0 | T=1]\\\\)\n",
    "\n",
    "现在，我知道我们不能看到两种潜在的结果，但为了争论，我们假设我们可以。假设因果推理之神对我们进行的许多统计斗争感到满意，并以上帝般的力量奖励我们，以查看替代的潜在结果。有了这种能力，假设我们收集了 4 所学校的数据。我们知道他们是否向学生提供平板电脑以及他们在某些年度学术测试中的分数。在这里，平板电脑是治疗方法，所以 \\\\(T=1\\\\) 如果学校向孩子们提供平板电脑。 \\\\(Y\\\\) 将是测试分数。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>i</th>\n",
       "      <th>y0</th>\n",
       "      <th>y1</th>\n",
       "      <th>t</th>\n",
       "      <th>y</th>\n",
       "      <th>te</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>500</td>\n",
       "      <td>450</td>\n",
       "      <td>0</td>\n",
       "      <td>500</td>\n",
       "      <td>-50</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>600</td>\n",
       "      <td>600</td>\n",
       "      <td>0</td>\n",
       "      <td>600</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>800</td>\n",
       "      <td>600</td>\n",
       "      <td>1</td>\n",
       "      <td>600</td>\n",
       "      <td>-200</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>700</td>\n",
       "      <td>750</td>\n",
       "      <td>1</td>\n",
       "      <td>750</td>\n",
       "      <td>50</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   i   y0   y1  t    y   te\n",
       "0  1  500  450  0  500  -50\n",
       "1  2  600  600  0  600    0\n",
       "2  3  800  600  1  600 -200\n",
       "3  4  700  750  1  750   50"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.DataFrame(dict(\n",
    "    i= [1,2,3,4],\n",
    "    y0=[500,600,800,700],\n",
    "    y1=[450,600,600,750],\n",
    "    t= [0,0,1,1],\n",
    "    y= [500,600,600,750],\n",
    "    te=[-50,0,-200,50],\n",
    "))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "这里的 \\\\(ATE\\\\) 将是最后一列的平均值，即治疗效果的平均值：\n",
    "\n",
    "\\\\(ATE=(-50 + 0 - 200 + 50)/4 = -50\\\\)\n",
    "\n",
    "这意味着平板电脑会使学生的学习成绩平均降低 50 分。 当 \\\\(T=1\\\\) 时，这里的 \\\\(ATT\\\\) 将是最后一列的平均值：\n",
    "\n",
    "\\\\(ATT=(- 200 + 50)/2 = -75\\\\)\n",
    "\n",
    "也就是说，对于接受治疗的学校，平板电脑使学生的学习成绩平均降低了 75 分。 当然，我们永远无法知道这一点。 实际上，上表如下所示："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>i</th>\n",
       "      <th>y0</th>\n",
       "      <th>y1</th>\n",
       "      <th>t</th>\n",
       "      <th>y</th>\n",
       "      <th>te</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>500.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>500</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>600.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>600</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>NaN</td>\n",
       "      <td>600.0</td>\n",
       "      <td>1</td>\n",
       "      <td>600</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>NaN</td>\n",
       "      <td>750.0</td>\n",
       "      <td>1</td>\n",
       "      <td>750</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   i     y0     y1  t    y  te\n",
       "0  1  500.0    NaN  0  500 NaN\n",
       "1  2  600.0    NaN  0  600 NaN\n",
       "2  3    NaN  600.0  1  600 NaN\n",
       "3  4    NaN  750.0  1  750 NaN"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.DataFrame(dict(\n",
    "    i= [1,2,3,4],\n",
    "    y0=[500,600,np.nan,np.nan],\n",
    "    y1=[np.nan,np.nan,600,750],\n",
    "    t= [0,0,1,1],\n",
    "    y= [500,600,600,750],\n",
    "    te=[np.nan,np.nan,np.nan,np.nan],\n",
    "))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "您可能会说，这肯定不理想，但我不能仍然采用处理过的平均值并将其与未处理过的平均值进行比较吗？ 换句话说，我不能只做 \\\\(ATE=(600+750)/2 - (500 + 600)/2 = 125\\\\) 吗？ 嗯，不！ 注意结果的不同。 那是因为你刚刚犯了将联想误认为因果关系的最严重的罪过。 要了解原因，让我们来看看因果推理的主要敌人。\n",
    "\n",
    "## 偏差\n",
    "\n",
    "偏差是使关联不同于因果关系的原因。幸运的是，我们的直觉很容易理解。让我们在课堂示例中回顾一下我们的平板电脑。当面对声称为孩子提供平板电脑的学校会获得更高考试成绩的说法时，我们可以反驳说，即使没有平板电脑，这些学校也可能会获得更高的考试成绩。那是因为他们可能比其他学校有更多的钱；因此，他们可以支付更好的教师，负担更好的教室，等等。换句话说，经过处理的学校（使用平板电脑）与未经处理的学校没有可比性。\n",
    "\n",
    "用潜在结果符号表示这一点就是说 \\\\(Y_0\\\\) 处理的 \\\\(Y_0\\\\) 与未处理的 \\\\(Y_0\\\\) 不同。请记住，处理过的 ** 的 \\\\(Y_0\\\\) 是反事实的**。我们无法观察它，但我们可以推理它。在这种特殊情况下，我们甚至可以利用我们对世界如何运作的理解走得更远。我们可以说，接受处理的学校的 \\\\(Y_0\\\\) 可能大于未处理学校的 \\\\(Y_0\\\\)。这是因为有能力为孩子提供平板电脑的学校也可以负担其他有助于提高考试成绩的因素。让它沉入一会儿。习惯谈论潜在的结果需要一些时间。再读一遍这一段，确保你理解它。\n",
    "\n",
    "考虑到这一点，我们可以用非常简单的数学来说明为什么关联不是因果关系。关联是通过 \\\\(E[Y|T=1] - E[Y|T=0]\\\\) 来衡量的。在我们的示例中，这是有平板电脑的学校的平均考试成绩减去没有平板电脑的学校的平均考试成绩。另一方面，因果关系由\\\\(E[Y_1 - Y_0]\\\\)衡量。\n",
    "\n",
    "为了了解它们之间的关系，让我们进行关联测量并将观察到的结果替换为潜在结果。对于治疗，观察到的结果是\\\\(Y_1\\\\)。对于未治疗者，观察到的结果是\\\\(Y_0\\\\)。\n",
    "\n",
    "$\n",
    "E[Y|T=1] - E[Y|T=0] = E[Y_1|T=1] - E[Y_0|T=0]\n",
    "$\n",
    "\n",
    "现在，让我们加减\\\\(E[Y_0|T=1]\\\\)。这是一个反事实的结果。它说明如果他们没有接受治疗，治疗的结果会是什么。\n",
    "\n",
    "$\n",
    "E[Y|T=1] - E[Y|T=0] = E[Y_1|T=1] - E[Y_0|T=0] + E[Y_0|T=1] - E[Y_0|T =1]\n",
    "$\n",
    "\n",
    "最后，我们对术语重新排序，合并一些期望，然后瞧：\n",
    "\n",
    "$\n",
    "E[Y|T=1] - E[Y|T=0] = \\underbrace{E[Y_1 - Y_0|T=1]}_{ATT} + \\underbrace{\\{ E[Y_0|T=1] - E[Y_0|T=0] \\}}_{BIAS}\n",
    "$\n",
    "\n",
    "这个简单的数学题包含了我们在因果问题中会遇到的所有问题。我不能强调你了解它的方方面面是多么重要。如果你被迫在手臂上纹身，这个方程应该是一个很好的候选者。这是一件非常值得抓住的事情，并且真正理解告诉我们什么，就像一些可以用 100 种不同方式解释的神圣文本。事实上，让我们更深入地了解一下。让我们把它分解成它的一些含义。首先，这个等式说明了为什么关联不是因果关系。正如我们所看到的，关联等于对被治疗者的治疗效果加上一个偏差项。 **偏差是由治疗组和对照组在治疗前的差异决定的，也就是说，如果他们都没有接受治疗**。当有人告诉我们教室里的平板电脑可以提高学习成绩时，我们现在可以准确地说出为什么我们会怀疑。我们认为，在这个例子中，\\\\(E[Y_0|T=0] < E[Y_0|T=1]\\\\)，也就是说，有能力为孩子提供平板电脑的学校比那些不能提供的学校本身表现就会更好，**不管是否提供平板电脑**。\n",
    "\n",
    "为什么会发生这种情况？一旦我们进入混淆那一章，我们将更多地讨论这一点，但现在你可以想到偏差的产生，因为许多我们无法控制的事情随着干预而发生变化。因此，经过干预和未经干预的学校不仅在平板电脑上有所不同。他们在学费、地点、师资等方面也有所不同……如果我们要说课堂上提供平板电脑可以提高学习成绩，我们需要有和没有平板电脑的学校在其他各方面，平均而言，彼此相似。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x432 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(10,6))\n",
    "sns.scatterplot(x=\"Tuition\", y=\"enem_score\", hue=\"Tablet\", data=data, s=70).set_title('ENEM score by Tuition Cost')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "现在我们了解了问题，让我们看看解决方案。我们也可以说使关联等于因果关系是必要的。 **如果 \\\\(E[Y_0|T=0] = E[Y_0|T=1]\\\\)，那么，关联就是因果关系！** 理解这一点不仅仅是记住方程式。这里有一个强烈的直觉论证。说\\\\(E[Y_0|T=0] = E[Y_0|T=1]\\\\)就是说干预组和对照组干预前具有可比性。或者，在被处理者没有被处理的情况下，如果我们可以观察到它的\\\\(Y_0\\\\)，那么它的结果将与未处理的相同。在数学上，偏差项会消失：\n",
    "\n",
    "$\n",
    "E[Y|T=1] - E[Y|T=0] = E[Y_1 - Y_0|T=1] = ATT\n",
    "$\n",
    "\n",
    "此外，如果处理和未处理仅在处理本身不同，即 \\\\(E[Y_0|T=0] = E[Y_0|T=1]\\\\)\n",
    " \n",
    "我们认为对处理的因果影响与未处理的相同（因为它们非常相似）。\n",
    "\n",
    "$\n",
    "\\begin{align}\n",
    "E[Y_1 - Y_0|T=1] &= E[Y_1|T=1] - E[Y_0|T=1] \\\\\n",
    "&= E[Y_1|T=1] - E[Y_0|T=0] \\\\\n",
    "&= E[Y|T=1] - E[Y|T=0]\n",
    "\\end{align}\n",
    "$\n",
    "\n",
    "不仅如此，\\\\(E[Y_1 - Y_0|T=1]=E[Y_1 - Y_0|T=0]\\\\)，仅仅因为经过处理和未经处理是可以互换的。因此，在这种情况下，**手段的差异成为因果效应**：\n",
    "\n",
    "$\n",
    "E[Y|T=1] - E[Y|T=0] = ATT = ATE\n",
    "$\n",
    "\n",
    "再一次，这非常重要，我认为值得再看一遍，现在有漂亮的图片。如果我们在干预组和未干预组之间做一个简单的平均比较，这就是我们得到的（蓝点没有接受治疗，也就是平板电脑）：\n",
    "\n",
    "![img](./data/img/intro/anatomy1.png)\n",
    "\n",
    "请注意两组之间的结果差异可能有两个原因：\n",
    "\n",
    "1. 干预效果。给孩子平板电脑导致的考试分数增加。\n",
    "2. 干预因素本身之外，干预组和未干预组之间的其他差异。在这种情况下，干预组和未干预组的区别在于干预组的学费要高得多。考试成绩的一些差异可能是由于更高的学费带来了更好的教育。\n",
    "\n",
    "真正的干预效果只有在我们拥有观察潜在结果的神力时才能获得，如下左图所示。个体干预效果是该单位的结果与同一单位在获得替代治疗的情况下将具有的另一个理论结果之间的差异。这些是反事实结果，以浅色表示。\n",
    "\n",
    "![img](./data/img/intro/anatomy2.png)\n",
    "\n",
    "在右边的图中，我们描述了我们之前讨论过的偏差是什么。如果我们让每个人都不接受干预，我们就会产生偏差。在这种情况下，我们只剩下 \\\\(T_0\\\\) 潜在结果。然后，我们看到干预组和未干预组有何不同。如果他们这样做，则意味着干预之外的其他因素导致干预组和未干预组的不同。这就是偏差，是真实干预效果的阴影。\n",
    "\n",
    "现在，将此与没有偏差的假设情况进行对比。假设平板电脑被随机分配给学校。在这种情况下，贫富学校接受干预的机会是一样的。干预因素将很好地分布在所有学费范围内。\n",
    "\n",
    "![img](./data/img/intro/anatomy3.png)\n",
    "\n",
    "在这种情况下，干预和未干预之间的结果差异是平均因果效应。发生这种情况是因为除了干预本身之外，干预组和未干预组之间没有其他差异来源。我们看到的所有差异都必须归因于它。这种情况的另一种说法就是没有偏差。\n",
    "\n",
    "![img](./data/img/intro/anatomy4.png)\n",
    "\n",
    "如果我们将每个人都设置为不接受治疗，只观察 \\\\(Y_0\\\\) s，我们将发现治疗组和未治疗组之间没有差异。\n",
    "\n",
    "这就是因果推理的艰巨任务。这是关于寻找消除偏差的巧妙方法，使接受干预的和未接受干预的两组对象具有可比性，以便我们看到的所有差异只是平均干预效果。归根结底，因果推断是要弄清楚世界是如何运转的，排除所有的妄想和误解。现在我们明白了这一点，我们可以继续掌握一些最强大的方法来消除偏见，勇敢和真实的武器来确定因果关系。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 关键思想\n",
    "\n",
    "到目前为止，我们已经看到关联不是因果关系。最重要的是，我们已经确切地看到了为什么它不是，以及我们如何使关联成为因果关系。我们还引入了潜在结果符号，作为围绕因果推理的一种方式。有了它，我们将统计视为两种潜在的现实：一种是给予干预，另一种是不给予干预。但是，不幸的是，我们只能测量其中之一，这就是因果推断的根本问题所在。\n",
    "\n",
    "展望未来，我们将看到一些估计因果效应的基本技术，从随机试验的黄金标准开始。在我们进行的过程中，我还将回顾一些统计概念。我将以在因果推理课程中经常使用的引述作为结尾，该引述取自1972年的系列美剧《功夫》：\n",
    "\n",
    "> “人一生中发生的事情都已写好了。一个人必须按照命运的安排度过一生。” - Caine （虔官昌）说  \n",
    "> “是的，但每个人都可以按照自己的选择自由地生活。虽然它们看起来相反，但两者都是真实的。” - 老人"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 参考资料\n",
    "\n",
    "我喜欢将这本书视为对 Joshua Angrist、Alberto Abadie 和 Christopher Walters 令人惊叹的计量经济学课程的致敬。 这里的大部分想法都来自他们在美国经济学会（AEA）的课程。 阅读这些教材让我在艰难的2020年保持清醒。\n",
    "\n",
    "* [Cross-Section Econometrics](https://www.aeaweb.org/conference/cont-ed/2017-webcasts)\n",
    "* [Mastering Mostly Harmless Econometrics](https://www.aeaweb.org/conference/cont-ed/2020-webcasts)\n",
    "\n",
    "我还想参考 Angrist 的精彩书籍。 他们向我展示了计量经济学，或者他们所说的“度量”，不仅非常有用，而且非常有趣。\n",
    "\n",
    "* [Mostly Harmless Econometrics](https://www.mostlyharmlesseconometrics.com/)\n",
    "* [Mastering 'Metrics](https://www.masteringmetrics.com/)\n",
    "\n",
    "最后一本参考资料是下面这本Miguel Hernan and Jamie Robins的书。在我必须回答的最棘手的因果问题中，它一直是我值得信赖的伙伴。\n",
    "\n",
    "* [Causal Inference Book](https://www.hsph.harvard.edu/miguel-hernan/causal-inference-book/)\n",
    "\n",
    "啤酒的比喻来自于JL Colins超棒的股市投资系列博客 [Stock Series](https://jlcollinsnh.com/2012/04/15/stocks-part-1-theres-a-major-market-crash-coming-and-dr-lo-cant-save-you/)。对于所有希望高效率投资自己资金的人来说，这是不可错过的内容。\n",
    "\n",
    "![img](./data/img/poetry.png)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.13"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
